Matthias Clasen [Fri, 8 Jul 2022 02:00:11 +0000 (02:00 +0000)]
Merge branch 'matthiasc/for-main' into 'main'
widget-factory: Fix a missing export
See merge request GNOME/gtk!4855
Matthias Clasen [Fri, 8 Jul 2022 01:44:57 +0000 (21:44 -0400)]
widget-factory: Fix a missing export
This broke when we started using a scope.
Matthias Clasen [Wed, 6 Jul 2022 19:48:57 +0000 (19:48 +0000)]
Merge branch 'wip/cdavis/use-password-input-purpose' into 'main'
passwordentry: Use password input purpose
See merge request GNOME/gtk!4854
Christopher Davis [Wed, 6 Jul 2022 17:48:25 +0000 (13:48 -0400)]
passwordentry: Use password input purpose
Per discussion in #gtk on Matrix
Matthias Clasen [Tue, 5 Jul 2022 15:13:20 +0000 (15:13 +0000)]
Merge branch 'matthiasc/for-main' into 'main'
fontchooser work
See merge request GNOME/gtk!4850
Benjamin Otte [Mon, 4 Jul 2022 21:27:11 +0000 (21:27 +0000)]
Merge branch 'fix-ffmpeg-decoding' into 'main'
ffmpeg: Fix crash on some media files
See merge request GNOME/gtk!4851
Stephan Vedder [Mon, 4 Jul 2022 09:41:45 +0000 (11:41 +0200)]
ffmpeg: Fix crash on some media files
Return code EAGAIN expects the user to feed more packets into the decoder
Matthias Clasen [Sun, 3 Jul 2022 16:50:40 +0000 (12:50 -0400)]
fontchooser: Make size level effective
We were not hiding the size controls on the tweaks
page, which is arguably what should happen when
the size level is disabled.
Matthias Clasen [Sun, 3 Jul 2022 16:44:53 +0000 (12:44 -0400)]
Beef up testfontchooserdialog
Allow testing levels.
Matthias Clasen [Sun, 3 Jul 2022 11:38:24 +0000 (07:38 -0400)]
fontchooser: Some OpenType improvements
Work harder to find examples for char variation
features, and pull the feature labels out of
the font if possible. This lets us show
meaningful names like "Localised @ and & symbols"
instead of "Stylistic Set 7" or even "ss07".
Matthias Clasen [Sun, 3 Jul 2022 05:19:19 +0000 (01:19 -0400)]
Font features demo improvements
Use font-provided names for ssNN and cvNN features.
But good luck finding a font that has these!
Matthias Clasen [Sun, 3 Jul 2022 03:37:34 +0000 (23:37 -0400)]
Font features demo improvements
Add buttons to cycle through samples.
Matthias Clasen [Sun, 3 Jul 2022 02:46:27 +0000 (22:46 -0400)]
Fix up font features demo
The conversion to a textview was incomplete.
Мирослав Николић [Sun, 3 Jul 2022 02:18:43 +0000 (02:18 +0000)]
Update Serbian translation
(cherry picked from commit
7c0cf9e0c927cd783b0e68d387e20a857b0baf9d)
Emmanuele Bassi [Sat, 2 Jul 2022 22:46:40 +0000 (22:46 +0000)]
Merge branch 'wip/exalm/actionbar' into 'main'
actionbar: Document GtkBuildable child types
See merge request GNOME/gtk!4848
Alexander Mikhaylenko [Sat, 2 Jul 2022 22:26:18 +0000 (02:26 +0400)]
actionbar: Document GtkBuildable child types
Aleksandr Melman [Sat, 2 Jul 2022 18:50:32 +0000 (18:50 +0000)]
Update Russian translation
Matthias Clasen [Sat, 2 Jul 2022 18:17:04 +0000 (18:17 +0000)]
Merge branch 'matthiasc/for-main' into 'main'
gtk4-demo: Add color to font features
See merge request GNOME/gtk!4847
Matthias Clasen [Sat, 2 Jul 2022 15:34:57 +0000 (11:34 -0400)]
gtk4-demo: Add color to font features
Matthias Clasen [Fri, 1 Jul 2022 11:17:32 +0000 (11:17 +0000)]
Merge branch 'wip/chergert/fix-menutracker' into 'main'
menutrackeritem: protect against use-after-free
Closes #5009
See merge request GNOME/gtk!4832
Matthias Clasen [Fri, 1 Jul 2022 04:37:07 +0000 (04:37 +0000)]
Merge branch 'matthiasc/for-main' into 'main'
gtk4-demo: Cosmetics
See merge request GNOME/gtk!4846
Matthias Clasen [Fri, 1 Jul 2022 04:10:16 +0000 (00:10 -0400)]
gtk4-demo: Cosmetics
Matthias Clasen [Fri, 1 Jul 2022 04:08:03 +0000 (04:08 +0000)]
Merge branch 'matthiasc/for-main' into 'main'
Matthiasc/for main
See merge request GNOME/gtk!4845
Matthias Clasen [Fri, 1 Jul 2022 03:52:37 +0000 (23:52 -0400)]
gtk4-demo: Add a waterfall to font features
Matthias Clasen [Fri, 1 Jul 2022 01:11:49 +0000 (21:11 -0400)]
gtk4-demo: Fix font features animation
Matthias Clasen [Fri, 1 Jul 2022 01:03:04 +0000 (01:03 +0000)]
Merge branch 'matthiasc/for-main' into 'main'
demos: Use gtk_builder_cscope_add_callback
See merge request GNOME/gtk!4844
Matthias Clasen [Fri, 1 Jul 2022 00:10:06 +0000 (20:10 -0400)]
demos: Use gtk_builder_cscope_add_callback
This is C convenience API, lets use it for
our convenience.
Matthias Clasen [Thu, 30 Jun 2022 23:23:04 +0000 (23:23 +0000)]
Merge branch 'matthiasc/for-main' into 'main'
Add gtk_builder_cscope_add_callback
See merge request GNOME/gtk!4843
Matthias Clasen [Thu, 30 Jun 2022 22:53:10 +0000 (18:53 -0400)]
gtk3-demo: Add animation to font features
Matthias Clasen [Thu, 30 Jun 2022 21:51:41 +0000 (17:51 -0400)]
gtk4-demo: Polish the font features demo
Matthias Clasen [Thu, 30 Jun 2022 21:02:50 +0000 (17:02 -0400)]
gtk4-demo: Restructure the font features demo
Matthias Clasen [Thu, 30 Jun 2022 20:08:12 +0000 (16:08 -0400)]
gtk4-demo: Cosmetics
Rename the ui file to match the C source, to preserve sanity.
Matthias Clasen [Thu, 30 Jun 2022 20:13:17 +0000 (16:13 -0400)]
Add gtk_builder_cscope_add_callback
This is a convenience method for the common case
that symbols are used under their own name.
Matthias Clasen [Thu, 30 Jun 2022 14:12:20 +0000 (14:12 +0000)]
Merge branch 'matthiasc/for-main' into 'main'
gtk-demo: Beef up font features demo
See merge request GNOME/gtk!4841
Matthias Clasen [Thu, 30 Jun 2022 13:42:32 +0000 (09:42 -0400)]
gtk-demo: Beef up font features demo
Some work on making this demo better.
Matthias Clasen [Wed, 29 Jun 2022 20:05:44 +0000 (20:05 +0000)]
Merge branch 'wip/jimmac/selectable-labels' into 'main'
theme: selectable labels legibility
Closes #5017
See merge request GNOME/gtk!4840
Jakub Steiner [Wed, 29 Jun 2022 19:37:20 +0000 (21:37 +0200)]
theme: selectable labels legibility
- don't set fg color for selections
Fixes https://gitlab.gnome.org/GNOME/gtk/-/issues/5017
Matthias Clasen [Wed, 29 Jun 2022 19:16:32 +0000 (19:16 +0000)]
Merge branch 'matthiasc/for-main' into 'main'
gtk-demo: Cosmetics
See merge request GNOME/gtk!4839
Benjamin Otte [Wed, 29 Jun 2022 13:00:53 +0000 (13:00 +0000)]
Merge branch 'testdatatable' into 'main'
tests: Add testdatatable
See merge request GNOME/gtk!4838
Ivan Molodetskikh [Wed, 29 Jun 2022 04:46:21 +0000 (21:46 -0700)]
tests: Add testdatatable
Add a GtkColumnView scrolling performance test similar to the one used
previously in https://gitlab.gnome.org/GNOME/gtk/-/issues/3334.
The test creates a table with 20 columns and 10,000 rows and scrolls it
to a random position every frame, while measuring the frame times.
There is a commandline flag to pick the cell widget between none (for
benchmarking raw column view scrolling) and various label types. There
is also a commandline switch to disable automatic scrolling in case a
manual assessment is desired. Finally, there's an argument for
controlling the number of columns.
Emmanuele Bassi [Tue, 28 Jun 2022 21:02:46 +0000 (21:02 +0000)]
Merge branch 'ebassi/ci-publish-doc-fix' into 'main'
ci: Force the fedora image for the publish-docs job
See merge request GNOME/gtk!4837
Emmanuele Bassi [Tue, 28 Jun 2022 20:31:07 +0000 (21:31 +0100)]
ci: Force the fedora image for the publish-docs job
Otherwise every CI runner might decide to use a different default
image, and we'll end up on one that doesn't have curl.
Benjamin Otte [Tue, 28 Jun 2022 19:30:17 +0000 (19:30 +0000)]
Merge branch 'wip/otte/for-main' into 'main'
Rework listitemfactory
See merge request GNOME/gtk!4835
Emmanuele Bassi [Tue, 28 Jun 2022 17:59:31 +0000 (17:59 +0000)]
Merge branch 'template-signals' into 'main'
Force quark creation for templates
See merge request GNOME/gtk!4836
Maximiliano Sandoval R [Tue, 28 Jun 2022 16:48:38 +0000 (18:48 +0200)]
Force quark creation for templates
Sabri Ünal [Tue, 28 Jun 2022 15:52:12 +0000 (15:52 +0000)]
Update Turkish translation
Benjamin Otte [Tue, 28 Jun 2022 14:33:24 +0000 (16:33 +0200)]
signallistitemfactory: Update signal prototype
I'm not sure this is API safe, but it is necessary if we want to support
section items and canvas items.
If it's deemed API-unstable, we have to copy this object and deprecate
this one.
Benjamin Otte [Tue, 28 Jun 2022 14:34:24 +0000 (16:34 +0200)]
listitemfactory: Make this callback-based
This way, we no longer prescribe the use of either GtkListItem or
GtkListItemWidget.
This means we can use it in other places, such as for custom section
header objects or with my Canvas ideas.
Benjamin Otte [Tue, 28 Jun 2022 14:25:31 +0000 (16:25 +0200)]
picture: Clear the paintable properly
Add a clear() function and call it from dispose() instead of using
set_paintable().
Danial Behzadi [Tue, 28 Jun 2022 10:31:16 +0000 (10:31 +0000)]
Update Persian translation
Aleksandr Melman [Sat, 25 Jun 2022 18:36:18 +0000 (18:36 +0000)]
Update Russian translation
Quentin PAGÈS [Sat, 25 Jun 2022 08:56:48 +0000 (08:56 +0000)]
Update Occitan translation
Christian Hergert [Fri, 24 Jun 2022 21:28:18 +0000 (14:28 -0700)]
menutrackeritem: protect against use-after-free
With recent updates to GLib, I now see cases where we can hit a state that
has finalized before notify (which will bump the ref count back up). This
is evident in GNOME Text Editor when showing a language submenu from a
popover, and then dismissing the popover and subsequently the tab.
With the previous commit, we at least get a warning like this, which helped
track down the issue.
Gtk-CRITICAL **: gtk_action_observable_unregister_observer: assertion 'GTK_IS_ACTION_OBSERVABLE (observable)' failed
GLib-GObject-CRITICAL **: g_object_ref: assertion '!object_already_finalized' failed
This patch fixes both of those criticals.
Fixes #5009
Christian Hergert [Fri, 24 Jun 2022 20:50:08 +0000 (13:50 -0700)]
menutrackeritem: be defensive during finalize
The menu/action system tends to be incredibly re-entrant, and while fixing
the misuse during finalization cycles should be a priority, this can help
protect just a bit more.
Related #5009
Benjamin Otte [Fri, 24 Jun 2022 03:39:16 +0000 (03:39 +0000)]
Merge branch 'wip/otte/for-main' into 'main'
gdk: Replace GTK_USE_PORTAL env var with GDK_DEBUG flag
See merge request GNOME/gtk!4829
Benjamin Otte [Fri, 24 Jun 2022 00:15:25 +0000 (02:15 +0200)]
gdk: Replace GTK_USE_PORTAL env var with GDK_DEBUG flag
It's a debug flag, so make it clear that it is one.
Related: Clowns on the Arch wiki on
https://wiki.archlinux.org/title/Uniform_look_for_Qt_and_GTK_applications#Consistent_file_dialog
Matthias Clasen [Thu, 23 Jun 2022 21:46:45 +0000 (21:46 +0000)]
Merge branch 'alatiera/doc-type' into 'main'
shortcutcontroller: fix typo in property docs
See merge request GNOME/gtk!4827
Hugo Carvalho [Thu, 23 Jun 2022 21:41:23 +0000 (21:41 +0000)]
Update Portuguese translation
Jordan Petridis [Thu, 23 Jun 2022 19:33:51 +0000 (22:33 +0300)]
shortcutcontroller: fix typo in property docs
followup of
d7dae84af248bc198601cad89441724c5345504d
Matthias Clasen [Thu, 23 Jun 2022 11:59:55 +0000 (11:59 +0000)]
Merge branch 'bad-popup-extents' into 'main'
[x11] Fix coordinate space of rect in gdk_x11_surface_get_frame_extents when called on popups.
See merge request GNOME/gtk!4820
Matthias Clasen [Sun, 19 Jun 2022 21:51:06 +0000 (14:51 -0700)]
gtk-demo: Cosmetics
Tweak the complicated textview demo a bit.
Matthias Clasen [Thu, 23 Jun 2022 11:39:33 +0000 (11:39 +0000)]
Merge branch 'wip/jtojnar/demo-pickers-no-dirs' into 'main'
gtk-demo: Remove mention of directories in picker examples
See merge request GNOME/gtk!4825
Jan Tojnar [Wed, 22 Jun 2022 21:07:11 +0000 (23:07 +0200)]
gtk-demo: Remove mention of directories in picker examples
Those were removed in https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/2909.
Asier Sarasua Garmendia [Wed, 22 Jun 2022 19:17:51 +0000 (19:17 +0000)]
Update Basque translation
Yuri Chornoivan [Wed, 22 Jun 2022 19:06:56 +0000 (19:06 +0000)]
Update Ukrainian translation
Matthias Clasen [Wed, 22 Jun 2022 18:25:13 +0000 (18:25 +0000)]
Merge branch 'wip/otte/inspector-inspector' into 'main'
inspector: Inspect
See merge request GNOME/gtk!4822
Matthias Clasen [Wed, 22 Jun 2022 14:24:41 +0000 (14:24 +0000)]
Merge branch 'wip/xdg-toplevel-bounds' into 'main'
wayland: Add supports for xdg_toplevel.bounds
See merge request GNOME/gtk!4261
Matthias Clasen [Wed, 22 Jun 2022 14:20:11 +0000 (14:20 +0000)]
Merge branch 'gtk-window-export-handle-win32' into 'main'
Implement gtk_window_export_handle for other backends
See merge request GNOME/gtk!4824
Daniel Mustieles [Wed, 22 Jun 2022 08:45:59 +0000 (10:45 +0200)]
Updated Spanish translation
Luca Bacci [Tue, 21 Jun 2022 09:45:19 +0000 (11:45 +0200)]
Add stub gtk_window_export_handle implementation for some backends
Benjamin Otte [Tue, 21 Jun 2022 00:33:20 +0000 (02:33 +0200)]
inspector: Add an "inspect inspector" button
And launch a new inspector.
The location of that button is rather random - I had no idea where to
put it.
Benjamin Otte [Tue, 21 Jun 2022 00:32:33 +0000 (02:32 +0200)]
object-tree: Allow inspecting inspectors
We filter by display, so the inspector window should show up only when
inspecting the inspector.
Benjamin Otte [Tue, 21 Jun 2022 00:30:47 +0000 (02:30 +0200)]
inspector: Don't use global variable here
When inspecting the inspector, we want to create mutiple displays here.
If we need this to be global, we should store it per-inspected-display.
Aurimas Černius [Mon, 20 Jun 2022 19:18:16 +0000 (22:18 +0300)]
Updated Lithuanian translation
Emilio Cobos Álvarez [Mon, 20 Jun 2022 08:11:29 +0000 (10:11 +0200)]
[x11] Fix coordinate space of rect in gdk_x11_surface_get_frame_extents when called on popups.
If we take the early return we don't unscale this at the bottom of the
function, causing wrong coordinates in HiDPI screens.
This bug also affects GTK3 (I noticed this running Firefox tests on X).
Matthias Clasen [Fri, 17 Jun 2022 22:38:16 +0000 (22:38 +0000)]
Merge branch 'alatiera/inscription-since' into 'main'
inscription: Add missing Since annotations
See merge request GNOME/gtk!4815
Luca Bacci [Fri, 17 Jun 2022 09:37:14 +0000 (09:37 +0000)]
Merge branch 'gdk-win32-gtk-overlay-scrolling' into 'main'
GdkWin32: Add code for gtk-overlay-scrolling setting
Closes #4899
See merge request GNOME/gtk!4816
Luca Bacci [Fri, 17 Jun 2022 08:55:21 +0000 (10:55 +0200)]
GdkWin32: Add code for gtk-overlay-scrolling setting
Fixes https://gitlab.gnome.org/GNOME/gtk/-/issues/4899
Jordan Petridis [Thu, 16 Jun 2022 21:15:46 +0000 (00:15 +0300)]
inscription: Add missing Since annotations
Matthias Clasen [Wed, 15 Jun 2022 13:40:17 +0000 (13:40 +0000)]
Merge branch 'wip/jimmac/hc-sidebar-borders' into 'main'
HC: make selected items better visible
Closes #4984
See merge request GNOME/gtk!4813
Jakub Steiner [Wed, 15 Jun 2022 12:47:47 +0000 (14:47 +0200)]
HC: make selected items better visible
- follow libadwaita's example and outline selected items for better visibility
in high contrast variant
Fixes https://gitlab.gnome.org/GNOME/gtk/-/issues/4984
Jordi Mas [Tue, 14 Jun 2022 17:41:12 +0000 (19:41 +0200)]
Update Catalan translation
Matthias Clasen [Tue, 14 Jun 2022 12:25:02 +0000 (12:25 +0000)]
Merge branch 'matthiasc/for-main' into 'main'
gtk-demo: Add some keywords
See merge request GNOME/gtk!4812
Benjamin Otte [Tue, 14 Jun 2022 03:45:55 +0000 (03:45 +0000)]
Merge branch 'wip/antoniof/dont-rubberband-on-drag-end' into 'main'
listbase: Don't start rubberband on ::drag-end
See merge request GNOME/gtk!4793
Jonas Ådahl [Tue, 4 Aug 2020 14:52:20 +0000 (16:52 +0200)]
wayland: Add support for xdg_toplevel.bounds
The GdkToplevelSize struct already has the concept of "bounds", which
means the largest size a window should reasonably have. It's practically
the equivalent of the monitor the window is intended to be mapped on,
with the "struts" (e.g. panels) cut out. It's used by GTK to use this
information to calculate a default window size that is "lagom" (swedish;
not too large, not too small).
Jordi Mas [Mon, 13 Jun 2022 18:01:17 +0000 (20:01 +0200)]
Update Catalan translation
Matthias Clasen [Mon, 13 Jun 2022 15:16:51 +0000 (11:16 -0400)]
gtk-demo: Add some keywords
Make it so that the right demos show up when
you search for GtkInscription.
Aleksandr Melman [Mon, 13 Jun 2022 13:26:30 +0000 (13:26 +0000)]
Update Russian translation
Benjamin Otte [Mon, 13 Jun 2022 12:08:16 +0000 (12:08 +0000)]
Merge branch 'wip/otte/inscription' into 'main'
Inscription: Derive row alignment from xalign
See merge request GNOME/gtk!4811
Danial Behzadi [Mon, 13 Jun 2022 06:44:53 +0000 (06:44 +0000)]
Update Persian translation
Danial Behzadi [Mon, 13 Jun 2022 05:48:56 +0000 (05:48 +0000)]
Update Persian translation
Benjamin Otte [Mon, 13 Jun 2022 03:30:08 +0000 (05:30 +0200)]
reftests: Add an inscription xalign RTL test
This checks mainly that we do the right thing wrt PangoAlignment
weirdness.
0.25 and 0.75 are set to 0.0 and 1.0 currently because of Pango
limitations (and no desire to manually move lines).
But if that were to be fixed, both the ref and the test should update in
the same way and things should just keep working.
Benjamin Otte [Mon, 13 Jun 2022 02:54:19 +0000 (04:54 +0200)]
inscription: Multiparagraph text is always multiline
Wrap this text and clip towards the bottom, no matter how high the
inscription is.
Benjamin Otte [Mon, 13 Jun 2022 02:53:35 +0000 (04:53 +0200)]
inscription: Do not try to align layouts that have a proper width set
Pango knows where to put the text.
Benjamin Otte [Sun, 12 Jun 2022 23:26:20 +0000 (01:26 +0200)]
reftests: Add inscription reftest for xalign
Compare with labels again.
Georges Basile Stavracas Neto [Sun, 12 Jun 2022 17:27:33 +0000 (14:27 -0300)]
Inscription: Derive row alignment from xalign
Texts usually want the alignment of each row to match the xalign of
the text itself.
Derive the alignment of the PangoLayout from the xalign property of
the inscription. Because Pango doesn't provide float row alignment,
map left, center and right from the xalign in 1 / 3 steps.
Piotr Drąg [Sun, 12 Jun 2022 12:52:37 +0000 (14:52 +0200)]
Update POTFILES.skip
Matthias Clasen [Sun, 12 Jun 2022 01:38:40 +0000 (01:38 +0000)]
Merge branch 'wip/otte/inscription' into 'main'
More inscription work
See merge request GNOME/gtk!4808
Benjamin Otte [Sun, 12 Jun 2022 00:58:22 +0000 (02:58 +0200)]
inscription: Add ::wrap-mode
We use a different wrap-mode than GtkLabel, because we cannot just
resize the widget to make long words fit, we have to fit the size we are
given.
Benjamin Otte [Sun, 12 Jun 2022 00:42:00 +0000 (02:42 +0200)]
reftests: Test inscription multiline overflow